// 该文件专门用于创建整个应用的路由器
import VueRouter from 'vue-router'
//引入组件
import About from "../pages/About.vue";
import Home from "../pages/Home.vue";
import News from '../pages/News'
import Message from '../pages/Message'
import Detail from '../pages/Detail'

//创建并暴露一个路由器
const router = new VueRouter({
    routes: [
        {
            name: 'guanyu',//给路由起名可以简化跳转代码
            path: '/about',
            component: About,
            meta: { isAuth: false, title: '关于' }
        },
        {
            name: 'zhuye',
            path: '/home',
            component: Home,
            children: [
                {
                    name: 'xinwen',
                    //二级及以下路由不加“/”
                    path: 'news',
                    component: News,
                    meta: { isAuth: true, title: '主页' },

                    //独享路由守卫
                    beforeEnter: (to, from, next) => {
                        if (localStorage.getItem('school') === 'hpu') {
                            next()
                        } else {
                            alert('学校名不对，无权限')
                        }
                    }
                },
                {
                    name: 'xiaoxi',
                    path: 'message',
                    component: Message,
                    meta: { isAuth: true, title: '消息' },
                    children: [
                        {
                            name: 'xiangqing',
                            path: 'detail',
                            component: Detail,
                            props: { a: 1, b: 'hello' },
                            meta: { title: '详情' }
                        }
                    ]
                }
            ]
        }
    ]
})

// // 全局前置路由守卫
// //在每一次路由切换之前调用函数（初始化也会被调用一次）
// router.beforeEach((to, from, next) => {
//     // console.log(to);
//     // console.log(from);

//     // 这两种写法都是可以的，但是这样写判断的次数太多了，需要在页面进行新的数据判断（meta）
//     // if (to.path == '/home/news' || to.path == '/home/message') {
//     // if (to.name == 'xinwen' || to.name == 'xiaoxi') {
//     if (to.meta.isAuth) {//判断是否需要鉴定权限
//         if (localStorage.getItem('school') === 'hpu') {
//             next()
//         } else {
//             alert('学校名不对，无权限')
//         }
//     } else {
//         next()
//     }
// })


// // 后置路由守卫:初始化被调用，每次路由切换之后被调用
router.afterEach((to) => {
    document.title = to.meta.title || 'HPU'
})




export default router